LW2000

 

Nombre:                LockDown 2000

Versión:                3.01

Editor:                  LockDown Corp

Víctima:                LOCKDOWN2000.EXE

Herramientas:       W32Dasm

                            SoftICE

                            Cerebro

Cracker:                LW2000

Tutorial:                número 48

URL:                      http://lockdown2000.com

 

Renuncia: Este tutorial tiene una finalidad únicamente educativa. No asumo ninguna responsabilidad por el mal uso de éste material.

 

1.     Bien, arrancamos LockDown y vamos a la pantalla de registro y escribimos ‘1230099’ como Serial. ¡Booom! “The unlock code you have entered …” ¿Qué demonios es esto? ¡Parece que nos hemos encontrado con un ‘bug’! ¡Vamos a ‘corregirlo’!

2.     Cargamos el fichero en W32Dasm y buscamos nuestra cadena (usted ya debería saber cómo hacer esto; si no es así, lea mi tutorial número 1).

 

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:004C4BAC(U) >Vamos aquí

|

:004C4BB0 84DB            test bl, bl

:004C4BB2 7523            jne 004C4BD7

:004C4BB4 6A00            push 00000000

:004C4BB6 668B0DE44C4C00  mov cx, word ptr [004C4CE4]

:004C4BBD 33D2            xor edx, edx

 

*Possible StringData Ref from Code Obj->"The unlock code you have entered"

 

3.     ¡Estupendo! Vamos a ‘004C4BAC’ y echamos un vistazo al código:

 

:004C4BA2 58             pop eax

:004C4BA3 E894F4F3FF     call 0040403C >Rutina de comprobación

                                       >del Code

:004C4BA8 7504           jne 004C4BAE 

:004C4BAA B301           mov bl, 01

:004C4BAC EB02           jmp 004C4BB0

 

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:004C4BA8(C)

|

:004C4BAE 33DB           xor ebx, ebx

 

4.     Bien, veamos qué hay dentro del ‘CALL 0040403C’:

 

* Referenced by a CALL at Addresses:

|:0041210B   , :00416D07   , :0041804D   , :0041D59D   , :0041E51C  

|:0042A4CE   , :00431F9E   , :00432029   , :00432C8F   , :00432F04  

|:0043DA13   , :0043DFFD   , :0043E16D   , :0043E2E1   , :00440F89  

|:0044104D   , :00441428   , :004414E7   , :00441942   , :00441B96  

|:00442101   , :004422BF   , :0044FD13   , :0045F23F   , :0045F676  

|:00460C3C   , :0046336B   , :00463D3C   , :004762A8   , :0047668D  

|:0047E88F   , :0047E9D6   , :0047FBAE   , :0047FBC0   , :0048079E  

|:00480A42   , :00480A51   , :00480A60   , :00480A6F   , :00480FF2  

|:00481F3B   , :00488BB7   , :0048AEBB   , :0048B712   , :0048B776  

|:0048B78E   , :0048B8A3   , :004A33F9   , :004A4722   , :004A52A2  

|:004A5D12   , :004A620C   , :004A68A9   , :004A8382   , :004A8B24  

|:004ABD83   , :004AC29F   , :004ACA0F   , :004ACCD4   , :004ACF05  

|:004AD0B5   , :004AD0E0   , :004AD0FC   , :004AD149   , :004AD286  

|:004AD3C2   , :004B05CD   , :004B06D1   , :004B0901   , :004B30C6  

|:004B30D5   , :004B30E4   , :004B30F3   , :004B3421   , :004B3861  

|:004B3993   , :004B64A0   , :004B6529   , :004B6904   , :004B69C6  

|:004B69D8   , :004B6A9F   , :004B6AC7   , :004B6B6F   , :004B6D34  

|:004B6D53   , :004B6D7D   , :004B6D9C   , :004B71D0   , :004B780E  

|:004B7880   , :004B85C7   , :004B8BDB   , :004B8C18   , :004BC159  

|:004BC9AB   , :004BD23A   , :004BD40D   , :004BE3A9   , :004BEC7D  

|:004BECFB   , :004C0E48   , :004C0E97   , :004C156C   , :004C158D  

|:004C3AD2   , :004C3C6D   , :004C4BA3   , :004C54A1   , :004C5A0A  

|:004C5E1E   , :004C5E58   , :004C5ECA   , :004C5F04   , :004C5F76  

|:004C5FB0   , :004C6022   , :004C605C   , :004C60C9   , :004C6125  

|:004C6181   , :004C61DD   , :004C659E   , :004C65D0   , :004C99A2  

|:004C9E90   , :004CA568   , :004CAF3D   , :004CAF72   , :004CB762  

|:004CBA39   , :004CBAF2   , :004CBB18  

|

:0040403C 53             push ebx

:0040403D 56             push esi

:0040403E 57             push edi

:0040403F 89C6           mov esi, eax >Mueve el Serial_1 a ESI

:00404041 89D7           mov edi, edx >Mueve el Serial_2 a EDI

:00404043 39D0           cmp eax, edx >Los compara  

:00404045 0F848F000000   je 004040DA 

:0040404B 85F6           test esi, esi

:0040404D 7468           je 004040B7

:0040404F 85FF           test edi, edi

:00404051 746B           je 004040BE

:00404053 8B46FC         mov eax, dword ptr [esi-04]

:00404056 8B57FC         mov edx, dword ptr [edi-04]

:00404059 29D0           sub eax, edx

:0040405B 7702           ja 0040405F

:0040405D 01C2           add edx, eax

 

5.     Bien, anotamos el ‘00404043’. Salimos de W32Dasm y arrancamos LockDown. Pulsamos Ctrl-D para cambiarnos a SoftICE y ponemos un breakpoint en ‘00404043’ (“BPX 00404043”). Después pulsamos F5 para seguir ejecutando el programa e intentamos registrarlo. ¡Booom! SoftICE aparece. Entonces escribimos “D EAX” y “D EDX”. Ahora podemos ver el Serial falso y el Serial correcto. Lo anotamos, borramos todos los breakpoints (“BC *”) y ¡volvemos a intentarlo!

 

¡Enhorabuena! ¡Ya es usted un usuario registrado!

 

¡Se acabó! Fácil, ¿no? ¿Algún comentario? Envíeme un email a LW2000@gmx.net. o vaya a http://www.LW2000.cjb.net

 

Gracias a tKC por sus tutoriales. Empecé leyendo su primer tutorial y todavía sigo leyéndolos.

 

Traducción de: MeGaBiTe